Systems that continuously process large volumes and varying velocities of messages from external data sources may do so using a stream-processing paradigm that executes processes as distributed data-flow topologies consisting of tasks and interconnected by streams. These processes are bound to data sources from which messages are received and subsequently processed. While the process may control how the internal messages are represented and exchanged within the internal streams, the process needs to accept from a wide range of protocols over which the messages are received, the type of bundles that a set of messages may be compressed or encrypted with, or the types of formats the messages may be encoded in by the external data sources. In addition, the received messages may be structured in a variety of hierarchical or flat formats such as URL Query Strings, JSON, CSV, XML, or serialized POJOs, semi-structured in hybrid formats such as emails or logs, or unstructured formats such as text messages.